package com.ph.shopping.facade.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import cm.ph.shopping.facade.order.entity.PhOrderAddress;
import cm.ph.shopping.facade.order.vo.QueryOrderAddressVo;

public interface IOrderAddressMapper {

	int deleteByPrimaryKey(Long id);

	int insert(PhOrderAddress record);

	int insertSelective(PhOrderAddress record);

	PhOrderAddress selectByPrimaryKey(Long id);

	int updateByPrimaryKeySelective(PhOrderAddress record);

	int updateByPrimaryKey(PhOrderAddress record);
	/**
	 * 
	* @Title: countOrderAddr
	* @Description: 查询是否存在收货地址
	* @author WQiang
	* @date  2017年3月17日 上午11:24:50
	* @param memberId
	* @return
	* @throws Exception
	 */
	int countOrderAddr(@Param("memberId") long memberId);
	/**
	 * 
	* @Title: deleteOrderAddr
	* @Description: 删除收货地址
	* @author WQiang
	* @date  2017年3月17日 上午11:24:37
	* @param memberId
	* @param id
	* @return
	* @throws Exception
	 */
	int deleteOrderAddr(@Param("memberId") long memberId, @Param("id") long id);
	/**
	 * 
	* @Title: updateOrderAddrDefault
	* @Description: 取消默认地址
	* @author WQiang
	* @date  2017年3月17日 上午11:45:50
	* @param memberId
	* @param id
	* @param isdefault
	* @return
	 */
	int updateOrderAddrNotDefault(@Param("memberId") long memberId, @Param("id") long id, @Param("isdefault") int isdefault);
	
	/**
	 * 
	* @Title: updateOrderAddrDefault
	* @Description: 设置默认地址
	* @author WQiang
	* @date  2017年3月17日 下午2:01:36
	* @param memberId
	* @param id
	* @param isdefault
	* @return
	 */
	int updateOrderAddrDefault(@Param("memberId") long memberId, @Param("id") long id, @Param("isdefault") int isdefault);
	
	/**
	 * 
	* @Title: selectByIdAndMemberId
	* @Description: 查询收货地址
	* @author WQiang
	* @date  2017年3月17日 下午2:12:15
	* @param memberId
	* @return
	 */
	List<QueryOrderAddressVo> selectByIdAndMemberId(@Param("memberId") long memberId);
}